/**************************************************************************
 * @doc PIP
 * @module piputl.h |  
 * Header file used to communicate via the PIP Engine.
 *
 * Product     :   SoftPay 2000 (Global Payment Methodology).
 * <nl>Developer   : 
 * <nl>Notes       :
 *
 * @head3 PIP Functions |
 * @index | PIP
 * @end
 *
 * Copyright (c) 1996-2000 by VeriFone Inc. All rights reserved.
 * 
 * No part of this software may be used, stored, compiled, reproduced,
 * modified, transcribed, translated, transmitted, or transferred, in any form 
 * or by any means whether electronic, mechanical, magnetic, optical, 
 * or otherwise, without the express prior written permission of VeriFone, Inc.
   
$Log: /SoftPay/SPK2SIM/Source/Include/piputl.h $ 
 * 
 * 10    3/19/00 7:26p Jim_b4
 * 
 * 9     3/16/00 6:34p Jim_b4
 * Code security functionality added
 * 
 * 7     1/27/00 6:06p Kevin_v1
 * Modifed below overload functions to use FlexiRec/Field ID overload
 * scheme
 * 
 * void vdOverLoadSetTransFieldsFunc (int (*inNewSetTransFieldsFunc)())
 * void vdOverLoadInitValidationFunc (void
 * (*vdNewProcessInitValidationFunc)())
 * void vdOverLoadAccessFunction (int (*inNewCustomAccessFunc)())
 * void vdOverLoadModifyBatchRecFunc (int (*inNewModifyBatchRecFunc)())
 * void vdOverLoadDemoFunction (void (*inNewDemoModeFunction)())
 * 
 * 6     1/27/00 2:51p Monique_b1
 * Removed unsigned char stOptionalMap[BIT_MAP_SIZE];
 * 
 * 5     11/11/99 1:43p Jim_b4
 * ACT2000 as a shared library implementation and/or
 * Verifind Implementation
 * 
 * 4     10/20/99 1:50p Monique_b1
 * Added extern for ISO host structure
 * 
 * 3     10/18/99 11:58a Monique_b1
 * 
 * 2     10/12/99 6:18p Monique_b1
 * 
 * 1     10/12/99 4:37p Monique_b1
**************************************************************************/

#ifndef PIPUTL
#define PIPUTL

#ifdef PIP_DEFINED

#include <amexhost.h>

int inAddPIPFunctions(void);
int inModifyBatchRec (TRANSACTION_OBJECT *pobTran);
int inDefaultModifyBatchRec (TRANSACTION_OBJECT *pobTran);
void vdFreeISO8583Data(HOST_8583_DATA *psrHostData);
short  shLoadPIPTransCode (short  shTranCode);
int inUploadAdvices (VS_BOOL fSettle, TRANSACTION_OBJECT *pobTran, int inISOSendSize, VS_BOOL fReversalFlag);
int tset_trans_fields (int host, unsigned short shTransCode);
int PIPUTL_CODE_CHECK(char * a,char *b,short *  c,char * d,unsigned char * e);

extern char szPIPProcCode[];

#endif /* PIP_DEFINED */

#endif /* PIPUTL */

